package com.knowledge.business.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.knowledge.common.annotation.Excel;
import com.knowledge.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 文档分段对象 knowledge_document_segment
 *
 * @author zhaoyk
 * @date 2025-09-14
 */
@Data
@TableName(value = "knowledge_document_segment")
@EqualsAndHashCode(callSuper = true)
public class KnowledgeDocumentSegment extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    /**
     * "文档ID"
     */
    @Excel(name = "文档ID")
    private String documentId;
    /**
     * "分段序号"
     */
    @Excel(name = "分段序号")
    private Integer segmentIndex;
    /**
     * "分段内容"
     */
    @Excel(name = "分段内容")
    private String segmentContent;
    /**
     * "分段标题"
     */
    @Excel(name = "分段标题")
    private String segmentTitle;
    /**
     * "分段摘要"
     */
    @Excel(name = "分段摘要")
    private String segmentSummary;
    /**
     * "字数统计"
     */
    @Excel(name = "字数统计")
    private Integer wordCount;
    /**
     * "向量数据"
     */
    @Excel(name = "向量数据")
    private byte[] vectorData;
    /**
     * "向量状态"
     */
    @Excel(name = "向量状态", readConverterExp = "0=未处理,1=已处理,2=处理失败")
    private String vectorStatus;
    /**
     * "向量模型"
     */
    @Excel(name = "向量模型")
    private String vectorModel;

    /**
     * "文档标题"
     */
    @Excel(name = "文档标题")
    @TableField(exist = false)
    private String documentTitle;


}